home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 23 / AMIGAplus Sonderheft 23 (2000)(Falke)(DE)[!].iso / PublicDomain / Anwendungen / MP / mp103.readme < prev    next >
Text File  |  1999-11-08  |  15KB  |  278 lines

  1. Short: MPEG player for ECS/AGA/OpalVision/PicassoII, needs 020+,2MB,OS2.04
  2.  
  3. ---
  4. mp (mpeg_play) is a MPEG software decoder for the Commodore Amiga computer. It
  5. is derived from the UNIX/X11 MPEG decoder version 2.0 by the Berkeley Plateau
  6. Research Group. Many thanks to Lawrence A. Rowe, Ketan Patel and Brian Smith
  7. for publishing that decoder, without them I wouldn't even know how MPEG works.
  8.  
  9. Since the least release I found a few things where the player could get
  10. improved. You may enjoy a few new output modes as well as generally faster
  11. playback speed, especially with the gray display modes. If that's not enough
  12. you can now split an MPEG into individual IFF 24bit frames and use your
  13. favourite ANIM rendering tool. ANIMs can be played back much faster and you
  14. can use more sophisticated rendering algorithms as these aren't computed in
  15. real-time, ANIMs however require much more disk space and, for fast play back,
  16. you may need to load them completely into memory. As an example, the tennis.mpg
  17. animation is about 1.2MByte but when converted to HAM6 ANIM-7 format it takes
  18. 9.4MByte. On the other hand the MPEG is not much faster than 1 fps on my A3000
  19. but the ANIM plays back at 16..20 fps using ViewTek1.05.
  20.  
  21. When I added the HAM8 display mode I detected an unfortunate bug in the 39.106
  22. kickstart which is used in most A1200s and A4000s. The player uses a simple
  23. workaround but which makes the HAM8 mode slower than it already is, sorry.
  24.  
  25. Again, many thanks to all the people that contributed with ideas, code and
  26. time to test the player on as many configurations as possible.
  27.  
  28. ---
  29. Requirements for the 1.03 version (same as for 1.02):
  30.  
  31. - 68020 or higher CPU. Some thoughts went into that decision since it rules out
  32.   many people in viewing MPEGs but IMHO a 68000 is way too slow to decode MPEG
  33.   at a useful rate. Even an 68030/25MHz is quite slow, at least with this
  34.   program.
  35.  
  36. - about 2MB memory. The program uses table lookups for some functions,
  37.   especially the HAM rendering code and the hybrid dithering need a large
  38.   table. Other display and dithering options can live with less memory.
  39.  
  40. - AmigaOS 2.0 or higher. Well, everyone should have updated to AmigaOS2.0.
  41.   Compatibility to AmigaOS1.3 would have added more special cases. I also
  42.   believe that people who can afford an accelerated Amiga have no problems
  43.   with that requirement and it made some functions a bit easier.
  44.  
  45. ---
  46. How to use the program:
  47.  
  48. mp has to be run from the CLI/Shell. Following the UNIX tradition it accepts
  49. command line parameters in the form 'programname' '-option...' 'input-file'
  50. and reads from standard input when no input filename is given. So if you
  51. run mp without arguments it will appear to do nothing. But in reality it tries
  52. to read an MPEG bitstream from the keyboard. Since that is a bit difficult to
  53. enter you should end input by hitting CTRL-\ which sends an EOF condition.
  54.  
  55. valid options are:
  56.  
  57. -display displayname  this has no function and is a remnant from the X11 code
  58.                       that allowed to specify the name of the X server/screen
  59.                       to use.
  60.  
  61. -dither dithermode    selects a dither and/or display mode. Some displays types
  62.                       need special dithering so this has been combined into one
  63.                       option. More about the possible dithermodes below.
  64.  
  65. -loop                 causes the player to repeat an animation for ever. You
  66.                       have to break it with CTRL-C.
  67.  
  68. -eachstat             this would produce verbose statistics information.
  69.                       Calculating the statistics however slows down the player
  70.                       and thus has been #ifdef'ed out.
  71.  
  72. -no_display           dithers, but does not display, usually used for testing
  73.                       and timing purposes.
  74.  
  75. -shmem_off            again a remnant of the X11 player with no function
  76.  
  77. -quiet                the program normally writes the frame number for each
  78.                       frame to the standard output which can be used to pause
  79.                       the player by hitting any key in the shell window. The
  80.                       -quiet option suppresses that output.
  81.  
  82. -l_range num
  83. -cr_range num
  84. -cb_range num         All paletted display modes use a 'color cube' to fill the
  85.                       palette. The default is to use 16 luminance values
  86.                       (-l_range), 4 red values (-cr_range) and 4 blue values
  87.                       (-cb_range). For some movies this can produce bad colors,
  88.                       you can change the resolution of the color cube with
  89.                       these options, the total number of colors however cannot
  90.                       be larger than 256.
  91.                       As of 1.03 of the player a smaller color cube is used
  92.                       for the EHB display, only 6 luminance, 3 red and 3 blue
  93.                       values are used. The smaller palette yields more exact
  94.                       colors.
  95.  
  96. -nob                  causes the player to ignore and not display B (bothway
  97.                       interpolated) frames.
  98.  
  99. -nop                  causes the player to ignore and not display P (predicted)
  100.                       frames.
  101.  
  102. -saveiff filespec     new for 1.03: causes the player to save all frames to
  103.                       disk in the IFF24 format so that you can render ANIMs
  104.                       with your favourite image processing tool.
  105.                       filespec can be a simple filename, in this case the frame
  106.                       number is appended to generate the filenames for the
  107.                       individual frames. You can also use a pattern like
  108.                       prefix%%%suffix, the sequence of % characters gets
  109.                       replaced by the frame number (with possible leading
  110.                       zeroes to get equal length filenames).
  111.  
  112.                       Example:
  113.                       -saveiff micky.iff. generates micky.iff.1,micky.iff.2,..
  114.                       -saveiff micky.%%.iff generates micky.01.iff,...
  115.  
  116.                       'filename%' is identical to just 'filename'.
  117.  
  118. Dither and display options:
  119.  
  120. -dither ordered       use simple ordered dithering
  121. -dither ordered2      a faster ordered dither. This is the default.
  122. -dither mbordered     ordered dithering at the macroblock level.
  123. -dither fs4           Floyd-Steinberg dithering with 4 error values propagated
  124. -dither fs2           Floyd-Steinberg dithering with 2 error values propagated
  125. -dither fs2fast       a faster fs2
  126. -dither hybrid        Hybrid dithering, a combination of ordered dithering for
  127.                       luminance and fs2 dithering for chrominance. Errors are
  128.                       not propagated properly.
  129. -dither hybrid2       Hybrid dithering with error propagation among pixels.
  130. -dither 2x2           A dithering technique using a 2x2 pixel area for each
  131.                       pixel. The image displayed is 4 times larger than the
  132.                       original image encoded. Random error terms are added to
  133.                       each pixel to break up contours and gradients.
  134. -dither gray          Grayscale dithering. The image is dithered into 16
  135.                       grayscales. Chrominance information is thrown away.
  136. -dither gray8         Grayscale dithering with 256 grayscales (AGA only).
  137. -dither color         'True' color display with 4 bits luminance and 2*2 bits
  138.                       for chrominance.
  139. -dither ham6          'True' color display using HAM approximation. For each
  140.                       pixel either red, green or blue are set correctly and
  141.                       the other color components are the same as the pixel to
  142.                       the left. As the name implies this uses the 6bit HAM mode
  143.                       and is limited to 4096 possible colors.
  144. -dither none          no dithering is done, no image is displayed. Used to time
  145.                       the decoding process.
  146. -dither mono          Floyd-Steinberg dithering in black and white.
  147. -dither threshold     Simple thresholding in black and white.
  148.  
  149. and new for 1.03
  150. -dither ham8          'True' color display using HAM approximation. In HAM8
  151.                       mode you have a 18bit color palette for a